import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.HashSet;


//两数之和,假设每种输入只会对应一个答案。但是，数组中同一个元素不能使用两遍（同一个元素不能用两次，是不能使用相同的下标的元素）。
public class sumOfTwoNumber {
    public Integer[] sum(Integer[] nums,Integer target){//暴力算法的话，需要两个for循环
        HashMap<Integer,Integer> map = new HashMap<>();
        for(int i=0;i<nums.length;i++){
            int temp = target-nums[i];//找到另一个互补的数据
            if(map.get(temp)!=null){
                return new Integer[]{map.get(temp),i};
            }
            map.put(nums[i],i);//如果没有，就将当前的数据放进map中去
        }
        return  new Integer[]{-1,-1};
    }
    public static void main(String[] args) {
        Integer[] a = new Integer[]{3,5,2,7,11,15,3};
        var main = new sumOfTwoNumber();
        Integer[] res = main.sum(a,6);
        System.out.println(Arrays.toString(res));
    }
}
